package com.atchangsha.system.entity;

import com.atchangsha.system.vo.WorkerVO;
import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author 卓越班项目第二组
 * @date 2022-04-22 00:49:59
 */
@Data
@TableName("worker")
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class WorkerEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 员工号
	 */
	@TableId(type = IdType.AUTO)
	private Long id;
	/**
	 * 姓名
	 */
	private String name;
	/**
	 * 性别
	 */
	private String sex;
	/**
	 * 年龄
	 */
	private Integer age;
	/**
	 * 工资
	 */
	private Float salary;
	/**
	 * 创建时间
	 */
	@TableField(fill = FieldFill.INSERT)
	private Date createTime;
	/**
	 * 修改时间
	 */
	@TableField(fill = FieldFill.INSERT)
	private Date updateTime;
	/**
	 * 创建人
	 */
	private Long createBy;
	/**
	 * 修改人
	 */
	private Long updateBy;
	/**
	 * 逻辑删除标志：0：未删除，1：已删除
	 */
	@TableLogic
	private String removeFlag;
	/**
	 * 账号
	 */
	private String username;
	/**
	 * 密码
	 */
	private String password;
	/**
	 * 身份
	 */
	private String identity;
	/**
	 * 绩效
	 */
	private Long performance;
	/**
	 * 手机号
	 */
	private String phone;


	/**
	 * 将entity对象转换成VO对象
	 *
	 * @return VO对象
	 */
	public WorkerVO toEntity(){
		return WorkerVO.builder()
				.id(id)
				.age(age)
				.name(name)
				.sex(sex)
				.salary(salary)
				.username(username)
				.identity(identity)
				.performance(performance)
				.phone(phone)
				.build();
	}
}
